1. Field of the Invention
The present invention relates to an image processing system, and, in particular, to an image processing system which is suitable to be realized as a digital signal processor (DSP) for cameras as to provide a flexible data path which support a plurality of digital image processing, such as automatic white balance (AWB), automatic exposure (AE), blemish compensation, gamma correction, etc.
2. Related Background Art
There are various types of configurations to realize a camera system. The configurations may be depended upon the selection of processes, the sequence of the processes, color space, the components to be processed, and other optional functions. Furthermore, the camera system may be implemented in various ways. FIG. 4 shows a block diagram of a conventional camera system. The configuration shown in FIG. 4 is merely a single example of process function and sequence for the explanation of the conventional image processing.
In FIG. 4, signal flow of the camera system is generally classified into two categories: data path for signal processing; and non-data path for controlling. The data path of the conventional camera processing system is generally combined or blended with control functions. Each of the data paths are respectively controlled by a local control block such that the whole camera system is formed by the concatenation of said plurality of local control blocks. There is no strong relation or coordination among these local control blocks. This is due to the conventional camera system is designed based on the previous generation camera integrated circuits (ICs) formed by analog bipolar ICs. These camera ICs are built by the concatenation of analog local control blocks. Additionally, these local control blocks facilitate the understanding of the processes of each functional block and the design of each independent functional block.
The camera system shown in FIG. 4 comprises a blemish compensation block 61 for executing blemish compensation with a defective location data 62 to an original data from an image sensor (not shown), a shading compensation block 63 for executing the shading compensation with a shading table data 64 to the data from the blemish compensation block 61, and a transformation block 65 for transforming the data from shading compensation block 63 into red, green and blue (RGB) or color difference signals (Cb and Cr) and a luminance signal (Y) color data. The following processes are operated on these color spaces.
The camera system further comprises a noise reduction block 66 for suppressing the noises caused by image sensor or AD converter etc. by using a linear or non-linear filter such as Median filter, an edge enhancement block 67 for executing edge enhancement (or aperture compensation); an automatic exposure (AE) block 68 for controlling the gain of each color component as to adjust brightness; an exposure measurement block 70 for receiving an output signal of the edge enhancement block 67 via line 69 and outputting a signal to said AE block 68 through line 72. The output signal of the exposure measurement block 70 is further transmitted to an Iris/shutter control block 71 which outputs a signal 73 to a sensor module (not shown) for iris actuator and shutter speed control.
In FIG. 4, an automatic white balance (AWB) block 74 receiving an output signal from the AE block 68 is provided for performing white balance adjustment in accordance with a measurement of color characteristics of the present picture. A color estimation block 86 is provided within the AWB block 74 for performing the measurement of the color characteristics. In this AWB block 74, a suitable color temperature is selected based on a result from the color estimation block 86. Additional judging portion may be incorporated to improve the adaptability to various scenes, but this will make AWB block complicated.
The output signal of the AE block 68 is further delivered to an automatic focusing (AF) extraction block 76 via line 75 and subjected to high frequency analysis for focus control by a high-pass filter or Fourier transform portion. The AF extraction block 76 outputs a signal to an AF control block 77 for generating a control signal 78 to lens module (not shown).
The AWB block 74 outputs a signal that is subjected to gamma correction by gamma compensation block 79 with a gamma table 80 which decides characteristics of gamma compensation. As an option, a special effect block 81 is used to perform some special effect. The special effect block 81 then outputs a signal to a gain compensation block 82 for outputting a signal as a result 83 of camera system to be output to a next stage.
The camera system further includes a system controller 84 realized by central processing unit/digital signal processor (CPU/DSP) for performing the controlling of whole system including initial setting and the transition mode of the system. Some measurement and judgment may be performed at this system controller 84.
Alternatively, all of said mentioned camera processes may be effected by software programs for a more flexible configuration. But, each process in the software programs is almost the same as the conventional hardware camera system which is realized as a concatenation of smaller routine of processes each corresponding to a process realized in the conventional camera system.
However, the prior-art technique described above has the following disadvantages:
1. As each of these function blocks are executed by an independent block having a local control function, such system requires a concatenation of these independent blocks. The required hardware resource is thus increased and the construction of the camera system as a whole is rather complicated.
2. As the conventional architecture is formed with local control functions, it is difficult to use a more powerful CPU/DSP to control the sequences therefor. Each of the local control functions is realized by dedicated hardware predetermined during system development, it is impossible to update the system with a new powerful algorithm after then.
3. Since the blocks for automatically effecting the focusing, exposure adjustment, white balance adjustment, etc. are tightly coupled by the system controller 84, it is impossible to use a more powerful CPU which is provided inside of the system or outside of the system as a backend application processor. This makes the system too rigid to flexibly design to comply with the individual need of each camera system.